cmake_minimum_required(VERSION 3.11)
project(CppStandardLibrary_Linux)

set(CMAKE_CXX_STANDARD 14)

add_executable(CppStandardLibrary_Linux main.cpp)

add_executable(Template GenericProgramming/Template/TemplateTest01-Template.cpp)
add_executable(TemplateArgumentDeduction GenericProgramming/Template/TemplateTest02-TemplateArgumentDeduction.cpp)
add_executable(TemplateAndOverload GenericProgramming/Template/TemplateTest03-OverloadAndTemplate.cpp)
add_executable(VariadicTemplate GenericProgramming/Template/TemplateTest04-VariadicTemplate.cpp)
add_executable(TemplateSpecialization GenericProgramming/Template/TemplateTest05-TemplateSpecialization.cpp)

add_executable(TupleTest01 GenericProgramming/Tuple/TupleTest01.cpp)

add_executable(PairTest01 GenericProgramming/Pair/PairTest01.cpp)


add_executable(VectorTest01 STL/STLContainer/SequenceContainer/Vector/VectorTest01.cpp)
add_executable(VectorTest02 STL/STLContainer/SequenceContainer/Vector/VectorTest02.cpp
        STL/STLContainer/SequenceContainer/Vector/Book.cpp STL/STLContainer/SequenceContainer/Vector/Book.hpp)
add_executable(VectorTest03 STL/STLContainer/SequenceContainer/Vector/VectorTest03.cpp
        STL/STLContainer/SequenceContainer/Vector/Book.cpp STL/STLContainer/SequenceContainer/Vector/Book.hpp)
add_executable(VectorTest04 STL/STLContainer/SequenceContainer/Vector/VectorTest04.cpp
        STL/STLContainer/SequenceContainer/Vector/Book.cpp STL/STLContainer/SequenceContainer/Vector/Book.hpp)
add_executable(VectorTest05 STL/STLContainer/SequenceContainer/Vector/VectorTest05.cpp
        STL/STLContainer/SequenceContainer/Vector/Book.cpp STL/STLContainer/SequenceContainer/Vector/Book.hpp)


add_executable(ListTest01 STL/STLContainer/SequenceContainer/List/ListTest01.cpp STL/STLContainer/SequenceContainer/List/Todo.cpp STL/STLContainer/SequenceContainer/List/Todo.hpp)
add_executable(ListTest02 STL/STLContainer/SequenceContainer/List/ListTest02.cpp STL/STLContainer/SequenceContainer/List/Todo.cpp STL/STLContainer/SequenceContainer/List/Todo.hpp)
add_executable(ListTest03 STL/STLContainer/SequenceContainer/List/ListTest03.cpp STL/STLContainer/SequenceContainer/List/Todo.cpp STL/STLContainer/SequenceContainer/List/Todo.hpp)


##################################################################
add_executable(AllocatorTest01 STL/STLAllocator/AllocatorTest01.cpp)
add_executable(AllocatorTest02 STL/STLAllocator/AllocatorTest02.cpp)
add_executable(AllocatorTest03 STL/STLAllocator/AllocatorTest03.cpp)

##################################################################

##################################################################
add_executable(HashTableTest01 STL/STLContainer/AssociativeContainer/HashTable/HashTableTest01.cpp)
add_executable(HashTableTest02 STL/STLContainer/AssociativeContainer/HashTable/HashTableTest02.cpp)
add_executable(HashTableTest03 STL/STLContainer/AssociativeContainer/HashTable/HashTableTest03.cpp)
##################################################################
